/*
 *  屏幕缓冲区获取和刷新接口定义
 *
 *  注意:
 *      1.该类只会被上层实例化一次,无需考虑重入问题
 */
#ifndef _PLAT_DISPLAY_BASE_H_
#define _PLAT_DISPLAY_BASE_H_

#include <stdint.h>
#include "image_format.h"

class PlatDisplayBase
{
public:
    virtual ~PlatDisplayBase() {}

    // ----- 提供接口 -----

    // 获取显示器内存和信息
    virtual Image GetMap() = 0;
    // 刷新
    virtual void Refresh() = 0;
    virtual void RefreshRect(int32_t x, int32_t y, uint32_t width, uint32_t height) = 0;
};

#endif // _PLAT_DISPLAY_BASE_H_
